package cn.tedu.oa.notice.dao;



import cn.tedu.oa.common.dao.BaseDao;
import cn.tedu.oa.notice.entity.Notice;
import cn.tedu.oa.sys.entity.Department;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

@Repository
public interface NoticeDao extends BaseDao<Notice>{
    /**
     * 分页查询公告数据
     * @param criteria       (查询条件)
     * @param startIndex    （起始数据）
     * @param endIndex      （结束数据）
     * @return              （List<Notice>）
     */
    List<Notice> getNoticePageList(
                                    @Param("criteria")Object criteria,
                                    @Param("startIndex")Integer startIndex,
                                    @Param("endIndex")Integer endIndex);

    /**
     * 获取所有部门的id和名称
     * @return 部门集合
     */
    List<Department> getDeptIdAndName();

    /**
     * 查询记录总数
     * @param criteria   (查询条件)
     * @return          （记录总数）
     */
    int getRowCount(@Param("criteria")Object criteria);

    /**
     * 修改数据
     * @param Notice
     */
    void updateNotice(Notice Notice);
}
